/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package controllers;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
import dao.DaoMateria;
import model.Materia;

/**
 *
 * @author Ricardo
 */
@ManagedBean
@RequestScoped
public class ControllerMaterias {

    private String status = "Novo";
    private String id;
    private String nome;
    private DaoMateria daomateria = new DaoMateria();
    List<Materia> materias = daomateria.listarTodos();
    
    public ControllerMaterias() {
    }
    
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }
    
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }
    
    public String getNome(){
       return nome;
    } 
   
    public void setNome(String nome){
       this.nome = nome;
    }
   
    public List<Materia> getMaterias() {
        return materias;
    }

    public void setEscolas(List<Materia> materias) {
        this.materias = materias;
    }
    public void novo(){
        setStatus("Novo");
        setNome("");
    }
    
    public void gravar(){
        if (getId().equals("")){
            if(!this.daomateria.equals(getNome())){
                Materia m =new Materia();
                m.setNome(nome);
                this.daomateria.inserir(m);
                util.UtilWeb.enviarMessagemInfo("MSG", "Matéria criada com sucesso");
            }else{
            util.UtilWeb.enviarMessagemErro("MSG", "Matéria já está cadastrada");
            }
        }else{
            Materia m = (Materia) this.daomateria.buscarPorId(Long.parseLong(getId()));
            m.setNome(getNome());
            
            daomateria.atualizar(m);
            util.UtilWeb.enviarMessagemInfo("MSG", "Usuário alerado com sucesso");                            
        }
        setId("");
        setNome("");
        setStatus("Novo");
       this.materias = daomateria.listarTodos();  
    }
    
    public void excluir(int cod){
        Materia m = (Materia) daomateria.buscarPorId(new Long(cod));
        this.daomateria.excluir(m);
        
        this.materias = daomateria.listarTodos();       
    }
    
    public void alterar(int id){
       Materia m= (Materia)daomateria.buscarPorId(new Long(id));
       setStatus("Alterar");
        setId(""+m.getId()); 
       setNome(m.getNome());  
    }
    
}
